1594C - Make Them Equal - CodeForces Solution


brute force greedy math strings *1200

Please click on ads to support us..

Python Code:

t = int(input())
for i in range(t):
    n,k = map(str,input().split())
    n = int(n)
    s = input()
    ns = [0]*n
    count = 0
    for j in range(len(s)):
        if s[j]!=k:
            ns[j] = 1
            count+=1
    if count == 0:
        print(0)
    else:
        pos = False
        for k in range(n//2,n):
            if(ns[k] == 0):
                pos = True
                print(1)
                print(k+1)
                break
        if(not pos):
            print(2)
            print(n,n-1)

C++ Code:

#include<bits/stdc++.h>
/*
author:- laksheya_0809
*/
using namespace std;

#define int long long
#define ii pair<int, int>
#define vi vector<int>
#define pb push_back
#define ppb pop_back
#define vvi vector<vi>
#define vii vector<ii>
#define ln << '\n'
#define sz(x) (int)((x).size())
#define _for(s, n, upd) for(int i = s; i < n; i+=upd)
#define rep(i, s, n) for(int i = s; i < (n); i++)
#define all(x) (x).begin(), (x).end()
#define allr(x) (x).rbegin(), (x).rend()
#define fill(x, y) memset(x, y, sizeof x) 
#define mp map
#define ump unordered_map
const int MOD = 1000000007;

bool isprime(int x) {
    if(x==1) return false;
    for(int i = 2; i <= sqrt(x); i++)
        if(x%i == 0)
            return false;
    return true;
}

void sol() {
    int n;
    char c;
    cin >> n >> c;
    string s; cin >> s;

    bool flag = 1;
    rep(i, 0, n) 
        flag &= s[i] == c;

    if(flag) {
        cout << 0 ln; 
        return;
    }

    for(int i = 2; i <= n; i++) {
        flag = 1;
        for(int j = i; j <= n; j+=i) 
            flag &= s[j-1] == c;
        if(flag) {
            cout << 1 ln << i ln;
            return;
        }
    }
    
    cout << 2 ln << n << " " << n-1 ln;
}

signed main() {
    ios::sync_with_stdio(0);
    cin.tie(0);
    int t = 1;
    cin >> t;
    while(t--) sol();
    return 0;
}


Comments

Submit
0 Comments
More Questions

1615B - And It's Non-Zero
1619E - MEX and Increments
34B - Sale
1436A - Reorder
1363C - Game On Leaves
1373C - Pluses and Minuses
1173B - Nauuo and Chess
318B - Strings of Power
1625A - Ancient Civilization
864A - Fair Game
1663B - Mike's Sequence
448A - Rewards
1622A - Construct a Rectangle
1620A - Equal or Not Equal
1517A - Sum of 2050
620A - Professor GukiZ's Robot
1342A - Road To Zero
1520A - Do Not Be Distracted
352A - Jeff and Digits
1327A - Sum of Odd Integers
1276A - As Simple as One and Two
812C - Sagheer and Nubian Market
272A - Dima and Friends
1352C - K-th Not Divisible by n
545C - Woodcutters
1528B - Kavi on Pairing Duty
339B - Xenia and Ringroad
189A - Cut Ribbon
1182A - Filling Shapes
82A - Double Cola